@startuml
actor User
participant LoginDialog
participant ReqistrationDialog
participant MainWindow
participant UserManager
participant CipherManager
participant TOTPWindow
participant AccountDataDialog
participant ClipboardWatcher
participant TOTPManager



User -> LoginDialog : Запускает приложение
LoginDialog -> LoginDialog : проверяет данные пользователя
UserManager -> LoginDialog : credentials valid
LoginDialog -> MainWindow : starts main window
MainWindow -> UserManager : gets user data
MainWindow -> MainWindow : setUser(user)
MainWindow -> CipherManager : creates
MainWindow -> TOTPManager : creates
MainWindow -> CipherManager : uses encryption
MainWindow -> AccountDataDialog : manages account data
MainWindow -> ClipboardWatcher : monitors clipboard
MainWindow -> TOTPWindow : manages TOTP data
@enduml
